package org.hhh.order.service;


import org.hhh.basic.service.IBaseService;
import org.hhh.basic.util.PageList;
import org.hhh.order.domain.ProductOrder;
import org.hhh.order.query.ProductOrderQuery;
import org.hhh.user.domain.Logininfo;

import java.util.Map;


public interface IProductOrderService extends IBaseService<ProductOrder> {
    /**
     * 服务订单接口
     * @param params
     * @param currentLogininfo
     * @return
     */
    String submit(Map<String, Object> params, Logininfo currentLogininfo);

    /**
     * 服务订单后台查询
     * @param query
     * @param currentLogininfo
     * @return
     */
    PageList<ProductOrder> admin(ProductOrderQuery query, Logininfo currentLogininfo);

    /**
     * 服务订单用户查询
     * @param query
     * @param currentLogininfo
     * @return
     */
    PageList<ProductOrder> user(ProductOrderQuery query, Logininfo currentLogininfo);

    /**
     * 15分钟未支付订单自动取消
     * @param orderId
     */
    void cancelOrderByQuartz(Long orderId);
}
